package com.ctshk.rpc.booking.req.outside.food.save;

import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import javax.validation.Valid;
import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotEmpty;
import javax.validation.constraints.NotNull;
import java.io.Serializable;
import java.time.LocalDateTime;
import java.util.List;

/**
 * <p>
 * 站外餐饮预订信息
 * </p>
 *
 * @author 谢诗宏
 * @since 2021-03-09
 */
@Data


@ApiModel(value = "SupplierOutsideOrderFoodReq对象", description = "站外餐饮预订信息")
public class SupplierOutsideOrderFoodReq implements Serializable {

    private static final long serialVersionUID = 1L;

    @ApiModelProperty(value = "所属订单ID")
    private Long orderId;

    @NotBlank(message = "餐饮名称不能为空")
    @ApiModelProperty(value = "餐饮名称")
    private String name;

    @NotBlank(message = "城市不能为空")
    @ApiModelProperty(value = "城市")
    private String cityJson;

    @NotNull(message = "用餐时间不能为空")
    @ApiModelProperty(value = "用餐时间")
    private LocalDateTime eatTime;

    @NotBlank(message = "种类值不正确")
    @ApiModelProperty(value = "种类JSON")
    private String categoryJson;

    @ApiModelProperty(value = "说明")
    private String remark;

    @ApiModelProperty(value = "餐饮旅客列表")
    private List<SupplierOutsideOrderFoodTouristReq> supplierOutsideOrderFoodTouristReqList;

    @Valid
    @NotEmpty(message = "餐饮详情列表不能为空")
    @ApiModelProperty(value = "餐饮详情列表")
    private List<SupplierOutsideOrderFoodDetailReq> supplierOutsideOrderFoodDetailReqList;

}
